package com.mjf.io.file;

import org.junit.Test;

import java.io.File;
import java.io.IOException;

/**
 * 创建文件
 *
 * 下面四个都是抽象类：输入流与输出流的主体都是 Java 程序
 *  -InputStream(字节输入流)
 *  -OutputStream(字节输出流)
 *  -Reader(字符输入流)
 *  -Writer(字符输出流)
 */
public class FileCreate {

    // 方式1
    @Test
    public void create01() {
        String filePath = "D:\\coding\\idea\\java-stu\\output\\news1.txt";
        File file = new File(filePath);

        try {
            // 只有执行了createNewFile 方法，才会真正的，在磁盘创建该文件
            file.createNewFile();
            System.out.println("文件创建成功");
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

    //方式2：根据父目录文件+子路径构建
    @Test
    public void create02() {
        File parentFile = new File("D:\\coding\\idea\\java-stu\\output\\");
        String fileName = "news2.txt";

        File file = new File(parentFile, fileName);

        try {
            file.createNewFile();
            System.out.println("创建成功~");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    //方式3：根据父目录+子路径构建
    @Test
    public void create03() {
        String parentPath = "D:\\coding\\idea\\java-stu\\output\\";
        String fileName = "news3.txt";
        File file = new File(parentPath, fileName);

        try {
            file.createNewFile();
            System.out.println("创建成功~");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }


}
